package com.moji.entity.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class RespLoginDto {

    /**
     * id
     */
    private Long id;

    /**
     * 用户编码
     */
    @ApiModelProperty(value = "用户编码")
    private String userCode;

    /**
     * 用户名称
     */
    @ApiModelProperty(value = "用户名称")
    private String userName;

    /**
     * 登录密码
     */
    @ApiModelProperty(value = "登录密码")
    private String password;

    /**
     * 登录账号
     */
    @ApiModelProperty(value = "登录账号")
    private String loginId;

    /**
     * 性别
     */
    @ApiModelProperty(value = "性别")
    private String sex;

    /**
     * 年龄
     */
    @ApiModelProperty(value = "年龄")
    private Integer age;

    /**
     * 出生年月
     */
    @ApiModelProperty(value = "出生年月")
    private String birthday;

    /**
     * 手机号码
     */
    @ApiModelProperty(value = "手机号码")
    private String mobile;

    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱")
    private String email;

    /**
     * 角色编码权限组编码，多个编码用“,”分割
     */
    @ApiModelProperty(value = "角色编码权限组编码")
    private String rolesCode;

    /**
     * 角色名称
     */
    @ApiModelProperty(value = "角色名称")
    private String rolesName;

    /**
     * 部门编码
     */
    @ApiModelProperty(value = "部门编码")
    private String deptCode;

    /**
     * 部门名称
     */
    @ApiModelProperty(value = "部门名称")
    private String deptName;

    /**
     * 机构编码
     */
    @ApiModelProperty(value = "机构编码")
    private String orgCode;

    /**
     * 机构名称
     */
    @ApiModelProperty(value = "机构名称")
    private String orgName;

    /**
     * 密码修改时间最后修改密码时间
     */
    @ApiModelProperty(value = "密码修改时间最后修改密码时间")
    private Date lastUpPass;

    /**
     * 密码输错时间用于错误锁定帐号
     */
    @ApiModelProperty(value = "密码输错时间用于错误锁定帐号")
    private Date errDate;

    /**
     * 密码错误次数用户错误锁定账户
     */
    @ApiModelProperty(value = "密码错误次数用户错误锁定账户")
    private Integer errTimes;

    /**
     * 最后访问时间用于判断用户是否已掉线，防止用户重复登录，暂不使用
     */
    @ApiModelProperty(value = "最后访问时间用于判断用户是否已掉线，防止用户重复登录，暂不使用")
    private Date lastVisiteTime;

    /**
     * 上次登录时间
     */
    @ApiModelProperty(value = "上次登录时间")
    private Date lastLoginTime;

    /**
     * 本次登录IP
     */
    @ApiModelProperty(value = "本次登录IP")
    private String curIp;

    /**
     * 上次登录IP
     */
    @ApiModelProperty(value = "上次登录IP")
    private String lastIp;

    /**
     * 状态0 - 停用 1 - 启用
     */
    @ApiModelProperty(value = "状态0 - 停用 1 - 启用")
    private Short status;

    /**
     * 菜单权限列表
     */
    @ApiModelProperty(value = "菜单权限列表")
    private List<TreeMenuDto> menuAuthList;

    /**
     * 按钮权限列表
     */
    @ApiModelProperty(value = "按钮权限列表")
    private List<String> buttonAuthList;

    /**
     * 权限token
     */
    @ApiModelProperty(value = "权限token")
    private String authorization;


}
